While a variety of types of sensor array scanners have been provided for reading more complex forms of two dimensional bar-codes and matrix codes, these sensor array scanners are all continuous frame scanners and therefore suffer from high power consumption. Because many sensor array scanners are portable and powered by batteries, there exists a need for a portable reader with single frame capability and therefore reduced power consumption and correspondingly extended battery life. There also exists a need for a portable reader with enhanced accuracy and reliability, as well as reduced size and light weight.